Adding Value to Formal Test Oracles
نویسندگان
چکیده
Test oracles are programs which check the output of test cases run on other programs. We describe techniques which add value to formally-defined test oracles in three ways: (a) by measuring functional coverage of test suites, (b) by giving automated support to the process of validating the oracles, and (c) by automating the generation of test cases from the oracles. The techniques involve the use of coverage measures and AI-based search algorithms. We describe the application of these techniques in the verification and validation of a complex piece of real-world software.
منابع مشابه
Test-Driven Development with Oracles and Formal Specifications
The current industry trend to using Test Driven Development (TDD) is a recognition of the high value of creating executable tests as part of the development process. In TDD, the test code is a formal documentation of the required behaviour of the component or system being developed, but this documentation is necessarily incomplete and often over-specific. An alternative approach to TDD is to de...
متن کاملTranslating Object-z Speciications to Passive Test Oracles Translating Object-z Speciications to Passive Test Oracles
This report describes the translation of formal speciications of container classes to passive test oracles. Speciically, we use Object-Z for speciications and C++ for oracles. We discuss several practical issues for the use of formal speciications in test oracle generation. We then present the translation process for three passive oracle models and evaluate how each model satisses our goals of ...
متن کاملEecient Speciication-based Oracles for Critical Systems
EEective testing of critical systems has been hampered by the lack of a cost-eeective method for deciding the correctness of a program's behavior under test. Using formal speciications to describe the critical system properties and then checking test results against these spe-ciications overcomes these problems. If these test oracles , which are mechanisms for determining whether a test passes ...
متن کاملUsing Test Oracles and Formal Specifications with Test-Driven Development
This paper illustrates how Test Oracles and Formal Speci ̄cations, with appropriate tool support, can be used with Test-Driven Development (TDD). In TDD, the test code is a formal documentation of the required behavior of the component or system that is being developed, but this documentation is necessarily incomplete and often over-speci ̄c. We describe an alternative approach to TDD that is to ...
متن کاملGenetic Algorithm for Automatic Generation of Representative Test Suite for Mutation Testing
Discovering bugs in software towards quality of software is given paramount importance in research arena. Towards this end automatic test case generation became essential as manual test data generation and adding test oracles is tedious task. It is more so when there are no formal specifications to unearth the faults in test outcome. Therefore, it is important to generate representative test se...
متن کامل